Part Number Hot Search : 
ISL95808 ISL95808 ZX8510 AP943 01012 TK0765 STM32F 225M0
Product Description
Full Text Search
 

To Download SDA5250 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
 ICs for Consumer Electronics
TVTEXT Firmware and Command Interface Description Version 0.01 SDA 5250/5254/5255 (8 Pages) Firmware Version V3.3x
Target Specification 1996-12-01
Edition 1996-12-01 Published by Siemens AG, Bereich Halbleiter, MarketingKommunikation, Balanstrae 73, 81541 Munchen (c) Siemens AG 1996. All Rights Reserved. Attention please! As far as patents or other rights of third parties are concerned, liability is only assumed for components, not for applications, processes and circuits implemented within components or assemblies. The information describes the type of component and shall not be considered as assured characteristics. Terms of delivery and rights to change design reserved. For questions on technology, delivery and prices please contact the Semiconductor Group Offices in Germany or the Siemens Companies and Representatives worldwide (see address list). Due to technical requirements components may contain dangerous substances. For information on the types in question please contact your nearest Siemens Office, Semiconductor Group. Siemens AG is an approved CECC manufacturer. Packing Please use the recycling operators known to you. We can also help you - get in touch with your nearest sales office. By agreement we will take packing material back, if it is sorted. You must bear the costs of transport. For packing material that is returned to us unsorted or which we are not obliged to accept, we shall have to invoice you for any costs incurred. Components used in life-support devices or systems must be expressly authorized for such purpose! Critical components1 of the Semiconductor Group of Siemens AG, may only be used in life-support devices or systems2 with the express written approval of the Semiconductor Group of Siemens AG. 1 A critical component is a component used in a life-support device or system whose failure can reasonably be expected to cause the failure of that life-support device or system, or to affect its safety or effectiveness of that device or system. 2 Life support devices or systems are intended (a) to be implanted in the human body, or (b) to support and/or maintain and sustain human life. If they fail, it is reasonable to assume that the health of the user may be endangered.
SDA 5250/5254/5255 Revision History: Previous Version: Page Page (in previous (in current Version) Version)
Current Version: 1996-12-01
Subjects (major changes since last revision)
32 32 27 29 29 32 35 48 48 52 36 32 52 50 48 37 32 32 29 56 35 29 34 9 56 56 34 58 60 60 61
For changed features in the firmware versions see the file read.me on the demo disk Odd/even output in DISPLAY_MODE2 New input parameter for Update Mode in DISPLAY_MODE2 The X28/29 feature is not supported any more. New input parameter "Dont_write_row0" in DISPLAY_MODE1. Changed P26 behavior without P26_overwrite bit. New input parameter "top_pgm_mode" in DISPLAY_MODE2. Constant Definition for the Update Mode Characters. Change to Compiler 5.02 and linker 3.52. Banking of the TVTEXT Firmware Firmware in memory model small and large WSS implemented Small Pagetrace Changed xdata linker start address Vertical user subroutine "user_function" Linker 3.52 part of the firmware Output of subtitle C6 page Reset_acq start with OSD in DISPLAY_MODE2 p26_clear_c8 in DISPLAY_MODE2. New optional user request with USER_REQUEST_LIST First cyrillic version Hungarian language possible New HOLD mode possibility in DISPLAY_MODE1 Changed MIX mode behavior in DISPLAY_MODE3 Possibility to change the Page requests Two twist languages for cyrillic Changed linker and object filenames for the cyrillic firmware Row 24 control and switch with Display_mode3.2 First Greek release OSD Overview Text Reception Quality Patents
SDA 5250/5254/5255
Table of Contents 1 2 3 4 5 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 5.10 5.11 5.12 5.13 5.14 5.15 5.16 5.17 5.18 5.19 5.20 5.21 5.22 5.23 5.24 5.25 5.26 5.27 5.28 5.29 5.30 5.31 5.32 5.33
Page
General Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7 Page Request Priority Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 Command Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 TCI Command Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 Command Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13 Modified Display Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13 RESET_ACQ (No. 00) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13 OSD_ROW24 (No. 01) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13 PICTURE_MODE (No. 02) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14 TV_TEXT_MODE (No. 03) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14 MIX_MODE (No. 04) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14 UPDATE_MODE (No. 05) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15 TOGGLE_LIST_MODE (No. 06) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15 INDEX (No. 07) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16 SUBPAGE_MODE (No. 08) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16 SIZE (No. 09) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17 HOLD (No. 10) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17 REVEAL (No. 11) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18 CLOCK (No. 12) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18 LIST_PAGE (NO. 13) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19 RED (No. 14) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 GREEN (No. 15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 YELLOW (No. 16) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 CYAN (No. 17) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22 PAGE_PLUS (No. 18) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22 PAGE_MINUS (No. 19) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 SIZE_OFF (No. 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 DIGIT0 (No. 23) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 DIGIT1 (No. 24) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 DIGIT2 (No. 25) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 DIGIT3 (No. 26) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 DIGIT4 (No. 27) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 DIGIT5 (No. 28) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 DIGIT6 (No. 29) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 DIGIT7 (No. 30) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 DIGIT8 (No. 31) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 DIGIT9 (No. 32) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 OSD (No. 33) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
Semiconductor Group
4
1996-12-01
SDA 5250/5254/5255
Table of Contents 6 6.1 6.2 6.3 6.4 6.5 6.6 6.7 7 7.1 7.2 7.3 7.4 7.5 7.6 7.7 8 9 10 11 12 12.1 12.2 12.3 12.4 12.5 13 13.1 13.2 14 14.1 14.2 14.3 15 16 17
Page
Setup Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 ACQUISITION_MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 DISPLAY_MODE0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28 DISPLAY_MODE1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29 DISPLAY_MODE2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32 DISPLAY_MODE3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34 The Language User Set Table: USER_LANGC[8] . . . . . . . . . . . . . . . . . . . . .35 Constant Definitions for the Update Mode Characters . . . . . . . . . . . . . . . . . .35 Return Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 VPS_DATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 WSS_DATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 Subtitle C6 Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37 TEXT_MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37 RETURN_1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 RETURN_2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 RETURN_3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39 Stored Format of 1-Byte Hamming Protected Data . . . . . . . . . . . . . . . . .40 Stored Format of a Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41 Stored Format of Packet 8/30 (x000) Format 1 . . . . . . . . . . . . . . . . . . . . .43 Stored Format of Packet 8/30 (x100) Format 2 . . . . . . . . . . . . . . . . . . . . .44 Format of the Row24 Titles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45 Format of PAGETRACE and SIMPLE Title . . . . . . . . . . . . . . . . . . . . . . . . . .45 Format of TOP Title . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45 Format of LIST Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45 Format of Subpage Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45 Format of Row24 Title in Newsflash Mode . . . . . . . . . . . . . . . . . . . . . . . . . .46 Development Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47 Linker and Module Description of the Acquisition Demo . . . . . . . . . . . .48 Banking of the TVTEXT Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48 The Linker File (lk.dat) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 Description of the Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50 XRAM Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52 DATA and IDATA Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52 Memory Model of the TVTEXT Firmware . . . . . . . . . . . . . . . . . . . . . . . . . .52
5 1996-12-01
Semiconductor Group
SDA 5250/5254/5255
Table of Contents 18 19 19.1 19.2 19.3 20 21 22 22.1 22.2 22.3 23 23.1 23.2 24 25 25.1
Page
External Command Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53 How to Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54 Reset_acq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54 Acq_chec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54 Segment Name Conventions for Assembler Programs . . . . . . . . . . . . . .55 Data Pointer Select (DPSEL) Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . .55 Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56 Cyrillic Firmware Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56 Greek Firmware Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58 SIGNAL QUALITY COUNTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59 Application Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60 Overview about the On Screen Display Possibilities for the 8 Page Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60 Text Reception Quality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60 Patents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61 Infrared Decoder for SIEMENS IR60 Code . . . . . . . . . . . . . . . . . . . . . . . . .62 Infrared Keys for TVTEXT Commands in the Acquisition Demo . . . . . . . . . .65
Semiconductor Group
6
1996-12-01
SDA 5250/5254/5255
1
General Information
TVTEXT software is a SIEMENS software package which provides the programmer of the SDA 5250 (TVTEXT) with an easy access to and control of teletext. The following introductory chapters give an overview about the development environment and how to use this manual. This manual gives an information about the modules, commands and the input and output parameters of the TVTEXT teletext software. The SDA 5250 are a standard controller family with integrated hardware for teletext reception and display. Most of the teletext features are realized by software operations which are described in this specification. The interface is very simple so that the development time for integrating the text firmware in the complete TV software goes to zero. After giving the RESET command, the setup parameters are read and evaluated. The complete page management is done on chip. TOP and FLOF detection and the following memory allocation is done automatically, as well as the acquisition of packet 8/30/1, 8/30/2, VPS or WSS. The initial teletext page is set to `page 100' unless modified by the user software or by a valid packet 8/30. The user has different possibilities to enter a page request. One way is entering a page number for a new display page with the `DIGIT' commands. It is also possible to enter a page request with the colour keys RED, GREEN, YELLOW, CYAN or the INDEX key. These keys have different meanings depending on the current request mode. In all cases only the new display page has to be entered and all following page requests are done automatically by the firmware depending on the current mode. Some additional status information is also available (e.g. TOP, FLOF, Page found, ...) for generating individual messages like `Page xxx not broadcasted' by the external controller. For page acquisition a maximum of 8 pages is available. If OSD functions should be used, chapter 7 is reserved for OSD text. After reset the SDA 5250 is in the `SIMPLE mode', that means the initial page (page 100) is requested and the following 7 pages. The processor will start with the PICTURE mode. Optionally it can be decided, whether VPS or TEXT reception in line 16 should have higher priority during the first few frames of data acquisition after reset. SDA 5250 automatically changes to the page trace mode if enabled as soon as the page-trace repetition-counter reaches 64 and 8 different pages will be stored in the page trace. The page-trace repetition-counter is incremented after the same page is received twice. If the bit 2 in the DISPLAY_MODE1 input parameter is set to `0', the complete page trace function is disabled and the pages are requested in binary order (binary means increment or decrement the page number by 1). The user has the possibility to block upto 4 of the 8 available pages (with the LIST_PAGE command) for so called favorite or LIST pages. These pages are favorite page numbers of the user, programmed for each program individually, and stored for example in the
Semiconductor Group 7 1996-12-01
SDA 5250/5254/5255
NVM of the TV. These pages can not be removed by the automatic TOP or FLOF requests. In the LIST mode a special menu in row 24 can be generated for easy page selection by use of the colour keys. In TOP mode the BTT and a given number of AITs are immediately requested. Then the memory is filled with next block page, group page and so on (see below). A standard TOP title is also written to row 24 of the display memory. TOP mode is only switched on, if more than 7 pages are marked in the BTT. In FLOF mode the four link pages and the index page of the display chapter given by X/27/0 are requested. No page request will be given twice. Packets X/27/0 are compressed and stored in a special memory section. The reception of packets 8/30/0 and 8/30/1 is always enabled. Special input parameter register control the commands, the acquisition and the display functions. Pages are requested in the order of their priority until the memory space is exhausted. The priority of the pages is fixed in the following table.
Semiconductor Group
8
1996-12-01
SDA 5250/5254/5255
2
Page Request Priority Table
After the firmware has detected the request system (Simple, Trace, TOP...) it is necessary to request the TTX pages in the background with a special systematic as shown in this Page Request Priority Table with different page request groups (List pages, Request_List pages...): Priority Simple or Trace Request highest Display page LIST pages Top Request Display page LIST pages Flof Request Display page LIST pages User pages from USER_REQUEST_LIST (if enabled) FLOF links 1 ... 4
User pages from Basic TOP Table USER_REQUEST_LIST (if enabled) Pages from REQUEST_LIST Additional information table pages
User pages from FLOF index link USER_REQUEST_LIST (if enabled) lowest Pages from REQUEST_LIST Pages from REQUEST_LIST
The pages of the USER_REQUEST_LIST must be enabled with the User_Request_List bit. For additional information see input parameter DISPLAY_MODE1.7. The pages from the REQUEST_LIST are defined in the code array REQUEST_LIST in the module ADR_IOP.C51. It is an array of 3 columns and 6 rows. The working priority is in every row from left to right. If after the last request of next groups or 10's, there are any free pages, the memory is filled with page plus.
Semiconductor Group
9
1996-12-01
SDA 5250/5254/5255
REQUEST_LIST [6][3] (code array) Request System Top, Simple, Trace Top, Simple, Trace Request Command green key, page plus red, key, reset_acq, digits, page minus yellow key blue, index key for all request commands for all request commands REQUEST_ LIST (col0) REQUEST_ LIST (col1) REQUEST_ LIST (col2) number of next groups or 10's number of next groups or 10's
number of number of next previous pages blocks or 100's number of number of next previous pages blocks or 100's
Top, Simple, Trace Top, Simple, Trace Flof List
number of number of next previous pages blocks or 100's number of number of next previous pages blocks or 100's number of number of next previous pages 100's number of number of next previous pages 100's
number of next groups or 10's number of next groups or 10's number of next 10's number of next 10's
Example: For the commands blue and index shall be requested: 1 page minus and as much as possible block pages Array for request setup ! possible values for the number of pages: 0-7 ! unsigned char code REQUEST_LIST[6][3] = /*P-, blocks, groups */
{0x01, 0x01, 0x01, /* green key, page plus 0x01, 0x01, 0x01, /* yellow key 0x01, 0x07, 0x00, /* blue, index key 0x01, 0x00, 0x00, /* FLOF mode 0x01, 0x00, 0x00}; /* LIST mode 1 page minus, 1 block, 1 group, page plus */ 1 page minus, 1 block, 1 group, page plus */ 1 page minus, 7 blocks, 0 group, page plus */ 1 page minus, all next pages*/ 1 page minus, all next pages*/ 0x01, 0x01, 0x01, /* red key, reset_acq, digits, page minus: 1 page minus, 1 block, 1 group, page plus */
Semiconductor Group
10
1996-12-01
SDA 5250/5254/5255
3
Command Directory
This chapter contains a list of commands from the TVTEXT Command Interface TCI. The documentation for each command contains a statement about the command's purpose, a description of its input parameters with used parameter registers, and a description of its return values with used parameter registers. The documentation for some functions contains additional, important comments that a designer needs in order to use the command. How these commands are called is described in chapter 18.
Semiconductor Group
11
1996-12-01
SDA 5250/5254/5255
4
TCI Command Table
The following table shows the command name/command number assignment:
Command Name RESET_ACQ OSD_ROW24 PICTURE_MODE TV_TEXT_MODE MIX_MODE UPDATE_MODE TOGGLE_LIST_MODE INDEX SUBPAGE_MODE SIZE HOLD REVEAL CLOCK LIST_PAGE RED GREEN YELLOW CYAN PAGE_PLUS PAGE_MINUS SIZE_OFF DIGIT0 DIGIT1 DIGIT2 DIGIT3 DIGIT4 DIGIT5 DIGIT6 DIGIT7 DIGIT8 DIGIT9 OSD Semiconductor Group Command Number 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 23 24 25 26 27 28 29 30 31 32 33 12 1996-12-01
SDA 5250/5254/5255
5 5.1
Command Description Modified Display Registers
After the reset_acq() command the following display registers are modified by the firmware and the commands: DTIM, DTCR, DMODE1, DMODE2, DCRP, LANGC, SCCON 5.2 RESET_ACQ (No. 00)
This command resets the complete acquisition and should be given after each change of the program. After initializing the TVTEXT-page RAM and returning to the picture mode, the setup parameters are read and evaluated. Reset_acq() enables also two acqusition interrupts. The first interrupt starts with the recognition of the vertical signal. In this short interrupt the function userfunc is executed. The second interrupt starts with the recognition of the line24 of every field. In this interrupt the teletext data of the VBI buffer are processed, checked and stored. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter 5.3 SETUP PARAMETERS (see chapter 7) all return parameters None Possible State Always possible None Locked at State Never locked None
OSD_ROW24 (No. 01)
Osd_row24 is a toggle command which switches on or off the on screen display in row 24. The corresponding status bit is in ACQUISITION_MODE.7 (disable row24). If osd_row24 is switched on, the current content of the display chapter in row24 is stored in the background. The user has now the possibility, to write his own menu line in row 24 of the display chapter. If a TTX page is stored in this state, packet 24 will be stored in the background. Leaving this command (by giving it again) will restore the row 24 content (e.g. TOP title, FLOF, LIST, ...) Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter None ACQUISITION_MODE.7 (`1' = osd_row24 is ON, `0' is OFF) None . Possible State Always possible None Locked at State Never locked None
Semiconductor Group
13
1996-12-01
SDA 5250/5254/5255
5.4
PICTURE_MODE (No. 02)
Switches from any TEXT mode to TV mode. The switch is done by setting the whole screen to transparent. All acquisition tasks are done in background. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter 5.5 None RETURN_3 None Possible State Always possible None Locked at State OSD RETURN_3.4
TV_TEXT_MODE (No. 03)
Switches from TV mode to TEXT mode. The switch is done by resetting all transparent background and foreground bits. Further any special text modes (i.e. double height, hold, reveal) are cleared. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter 5.6 MIX_MODE (No. 04) None RETURN_3.3 None . Possible State Always possible None Locked at State OSD RETURN_3.4
This command toggles between TEXT background colour and transparent background colour. The switch is done by setting the appropriate transparent bits in the special function registers. Boxed characters can be displayed boxed or with transparent background with DISPLAY_MODE3.0. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter DISPLAY_MODE3.0 RETURN_3.2 None. Possible State TEXT RETURN_3.3 Locked at State OSD RETURN_3.4
Semiconductor Group
14
1996-12-01
SDA 5250/5254/5255
5.7
UPDATE_MODE (No. 05)
After giving this command the display is switched to transparent. - If the page is running in (the header is active) the page number will be seen in the left top of the screen without flash. - If the page is still being searched the characters from the update_code (see chapter 6.7) are displayed with flash until the page header is found. - If the page is already found, the text sign will be displayed without flash, until the next page header is found. Then the page number is displayed. In update mode the input of any page-related key as digit, red, green, ..., to start a new page request is possible. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter 5.8 None RETURN_3.0 None Possible State TEXT RETURN_3.3 Locked at State OSD RETURN_3.4
TOGGLE_LIST_MODE (No. 06)
This command switches on the LIST mode and offers a single line menu similar to the FLOF menu. This line contains the stored LIST page numbers which can be selected by the appropriate colour buttons. If there are less than 4 LIST pages stored, a `???.????' will appear in the related prompt box. If the list page is a subpage (subcode unequal 0000H or 3F7FH) the subpage number will also appear. If the list page is stored as a page with subpage `don't care' mode, instead of the subpage number `----' will appear (e.g. 207.----). Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter None TEXT_MODE.3 For format of the status line see chapter 12. Possible State Always possible None Locked at State Never locked None
Semiconductor Group
15
1996-12-01
SDA 5250/5254/5255
5.9
INDEX (No. 07)
- In FLOF mode there will be a change to the INDEX page of the FLOF broadcaster. If there is no INDEX page linked there will be a return to page 100 if no P8/30 init page is available. - In TOP or SIMPLE mode the index page request will return to page 100 if no P8/30 init page is available. - If packet 8/30 is available there will be a return to the initial page of this packet. - If the init-page bit in DISPLAY_MODE1 is set, a page request of the user defined init page will be done (see also I/O parameter description). This mode has the highest priority. Input parameters: DISPLAY_MODE1.3 Return values: None Comments: None EXECUTION TABLE Related I/O parameter 5.10 Possible State TEXT RETURN_3.3 Locked at State OSD RETURN_3.4
SUBPAGE_MODE (No. 08)
If this command is given the subpage mode is activated. That means that any subpage of the current basic display chapter can be requested. In that mode 4 digits must be given to specify a subpage. The subpage mode is terminated if this command is given again, or if any other page select method is used. With the red and green keys the next and the previous subcode can be selected. If any basicpage is requested in subpage `don't care' mode and in subpage `do care' mode with a special subcode (i.e. by use of a LIST page), this subpage is stored in the chapter with the `do care' mode. When subpage mode command is given, the subpage start value is `0001'. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter None RETURN_3.6 None Possible State TEXT RETURN_3.3 Locked at State OSD RETURN_3.4
Semiconductor Group
16
1996-12-01
SDA 5250/5254/5255
5.11
SIZE (No. 09) Row 0 ... 24 are shown in normal height. Row 0 ... 11 are shown in double height, row 24 in normal height. Row 12 ... 23 are shown in double height, row 24 in normal height.
This command switches between the three possible display sizes in the following order: Normal size: Double size upper half: Double size lower half: Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter 5.12 HOLD (No. 10)
None SFR DMODE1.(bit 3 and 4) Giving any page number related command (digit, colour key, index, p + ...) TVTEXT will always return to normal size. . Possible State Always possible None Locked at State Never locked None
This command stops the reception of the actual display chapter. This feature can be used to watch `running through' subpages. The time information is not effected by this command. If these memory locations should not be overwritten, the user has to set the `TIME_OFF' bit. This command has a toggle function. A new page request by any digit command will clear the hold function. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter See description of DISPLAY_MODE1.5 for different hold modes RETURN_2.7 None Possible State TEXT RETURN_3 (bit 3) Locked at State OSD RETURN_3 (bit 4)
Semiconductor Group
17
1996-12-01
SDA 5250/5254/5255
5.13
REVEAL (No. 11)
All hidden characters are revealed. Giving this command again, hides these characters again. If a new subpage runs in during subpage `don't care' mode, hidden characters are concealed after each new subpage reception. This command has a toggle function. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter 5.14 CLOCK (No. 12) None SFR DMODE1.5 None Possible State TEXT RETURN_3 (bit 3) Locked at State OSD RETURN_3 (bit 4)
In picture mode this command shows the actual time from the last 8 characters of each header in serial TTX transmission mode. In parallel TTX transmission mode the clock is shown of the actual displayed magazine. The clock is shown in double height. The foreground and background colour can be selected in the setup parameters. If the command is given again, or TEXT mode is chosen the clock is switched off. The position of the clock can be influenced by changing the horizontal and vertical delay registers DHD and DVD. Input parameters: Return values: Comments EXECUTION TABLE Related I/O parameter DISPLAY_MODE0 RETURN_3.5 None Possible State TV_PIC RETURN_3.1 Locked at State OSD RETURN_3.4
Semiconductor Group
18
1996-12-01
SDA 5250/5254/5255
5.15
LIST_PAGE (NO. 13)
This command adds or removes a LIST page (a favorite page) to the page memory. If the list page to be added is already requested, only the status of this page is changed to a list page. LIST pages can only be removed by the LIST command or after reset_acq. If the memory is full the page with the lowest priority is automatically removed and a page request will be started. Input parameters: LIST_RECORD[0] 0 0 0 0 0 M2 M1 M0 Page request record:
LIST_RECORD[1] PT3 PT2 PT1 PT0 PU3 PU2 PU1 PU0
LIST_RECORD[2] 0 MT2 MT1 MT0 MU3 MU2 MU1 MU0
LIST_RECORD[3] 0 0 HT1 HT2 HU3 HU2 HU1 HU0
All above listed request bits have the same meaning as defined in the Enhanced Teletext Specification. LIST_MODE 0 0 ADD/ REM SDC 0 0 LC_1 LC_0
LC_1 ... 0
LIST_colour: 0: The LIST page is attached to the red colour button 1: The LIST page is attached to the green colour button 2: The LIST page is attached to the yellow colour button 3: The LIST page is attached to the cyan colour button Subpage `don't care' mode: 1: The LIST page is a running-through subpage 0: The LIST page is a subpage
SDC
Semiconductor Group
19
1996-12-01
SDA 5250/5254/5255
ADD/REM
ADD or REMOVE a LIST page: 1: The LIST page is added to the page memory 0: The LIST page is removed from the page memory None. The command LIST_MODE offers a menu line which shows the stored list pages. A stored list page must be removed before a new list page can be given again with the same colour number.
Return values: Comments:
5.16
RED (No. 14)
Depending on the current mode the display chapter is changed to the page number indicated by the red button. - - - - - - In TOP mode, this is the previous available page marked in the BTT. In FLOF mode it is the first link page of packet x/27 of the current display page. In LIST mode it is the LIST#1 Page. In SIMPLE mode it is the previous available page in decimal order. In PAGETRACE mode it is the previous available page from the page trace. IN SUBPAGE mode it is the subpage with next lower subpage number. If the subpage is `0000', the next decremented subpage will be `3979'. None None Any other page selecting method quits this one. If a new page request is done, the actual page number will be written in row 0 col 0-6 of the display chapter. Possible State TEXT Related I/O parameter RETURN_3.3 Locked at State OSD RETURN_3.4
After changing the display chapter the new page requests are automatically done Input parameters: Return values: Comments:
EXECUTION TABLE
Semiconductor Group
20
1996-12-01
SDA 5250/5254/5255
5.17
GREEN (No. 15)
Depending on the current mode the display chapter is changed to the page number indicated by the green button. - - - - - - In TOP mode this is the next available page marked in the BTT. In FLOF mode it is the second link page of packet x/27 of the current display page. In LIST mode it is the LIST#2 Page. In SIMPLE mode it is the next available page in decimal order. In PAGETRACE mode it is the next available page from the page trace. In SUBPAGE mode it is the subpage with next higher subpage number. None None Any other page selecting method quits this one. If a new page request is done, the actual page number will be written in row 0 col 0-6 of the display chapter. Possible State TEXT Related I/O parameter 5.18 YELLOW (No. 16) RETURN_3.3 Locked at State OSD RETURN_3.4
After changing the display chapter the new page requests are automatically done. Input parameters: Return values: Comments:
EXECUTION TABLE
Depending on the current mode the display chapter is changed to the page number indicated by the yellow button. - - - - - In TOP mode this is the next available group page marked in the BTT. In FLOF mode it is the third link page of packet x/27 of the current display page. In LIST mode it is the LIST#3 Page. In SIMPLE or PAGETRACE mode it is the 10th page. In SUBPAGE mode this button is not defined. None None Any other page selecting method quits this one. If a new page request is done, the actual page number will be written in row 0 col 0-6 of the display chapter. Possible State TEXT Related I/O parameter RETURN_3.3 Locked at State OSD, SUBPAGE_MODE RETURN_3 (bit 6,4)
After changing the display chapter the new page requests are automatically done. Input parameters: Return values: Comments:
EXECUTION TABLE
Semiconductor Group
21
1996-12-01
SDA 5250/5254/5255
5.19
CYAN (No. 17)
Depending on the current mode the display chapter is changed to the page number indicated by the cyan button. - - - - - In TOP mode this is the next available block page marked in the BTT. In FLOF mode it is the forth link page of packet x/27 of the current display page. In LIST mode it is the LIST#4 page. In SIMPLE or PAGETRACE mode it is the 100th page. In SUBPAGE mode this button is not defined. None None Any other page selecting method quits this one.
After changing the display chapter the new page requests are automatically done. Input parameters: Return values: Comments:
If a new page request is done, the actual page number will be written in row 0 col 0-6 of the display chapter. EXECUTION TABLE Related I/O parameter 5.20 Possible State TEXT RETURN_3.3 Locked at State OSD, SUBPAGE_MODE RETURN_3 (bit 6,4)
PAGE_PLUS (No. 18)
After giving this command, TVTEXT will request the next decimal page or, in pagetrace mode the next page trace page. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter None None If a new page request is done, the actual page number will be written in row 0 col 0-6 of the display chapter. Possible State TEXT RETURN_3.3 Locked at State OSD, SUBPAGE_MODE RETURN_3 (bit 6,4)
Semiconductor Group
22
1996-12-01
SDA 5250/5254/5255
5.21
PAGE_MINUS (No. 19)
After giving this command, TVTEXT will request the previous decimal page or, in pagetrace mode the previous page trace page. Input parameters: Return values: Comments: EXECUTION TABLE Related I/O parameter 5.22 SIZE_OFF (No. 20) None SFR DMODE1.(bit 3,4) None. Possible State Always possible Related I/O parameter None Locked at State None None None None If a new page request is done, the actual page number will be written in row 0 of the display chapter. Possible State TEXT RETURN_3.3 Locked at State OSD, SUBPAGE_MODE RETURN_3 (bit 6,4)
This command will switch the display to normal height in any case. Input parameters: Return values: Comments: EXECUTION TABLE
Semiconductor Group
23
1996-12-01
SDA 5250/5254/5255
5.23
DIGIT0 (No. 23)
The digit `0' is added to the page number and written to the actual column position of row 0 of the display memory. This command is used for numeric selection of a page. 3 digits (4 in subpage mode) must be given one after each other, to select a new page. After entering the third digit for the page number (the forth in subpage mode) the display chapter will change and the page request of the complete page number will be executed. Depending on the current mode (TOP, FLOF, SIMPLE or LIST) all other page requests are automatically made in the background. Input parameters: Return values: Comments: None None Any other page selection method quits this one. Incomplete page numbers in the first 8 columns of the header are replaced by `-. The first digit of the page number must be > 0 and 8. In subpage mode the 4 digits may not be higher than `3979'. For format of the first 8 characters in row 0 of the display memory see chapter 9. Possible State TEXT Related I/O parameter 5.24 DIGIT1 (No. 24) RETURN_3.3 Locked at State OSD RETURN_3.4
EXECUTION TABLE
This command has the same meaning as `D_0' with the difference that the digit `1' is added to the page number. 5.25 DIGIT2 (No. 25)
This command has the same meaning as `D_0' with the difference that the digit `2' is added to the page number. 5.26 DIGIT3 (No. 26)
This command has the same meaning as `D_0' with the difference that the digit `3' is added to the page number. 5.27 DIGIT4 (No. 27)
This command has the same meaning as `D_0' with the difference that the digit `4' is added to the page number.
Semiconductor Group
24
1996-12-01
SDA 5250/5254/5255
5.28
DIGIT5 (No. 28)
This command has the same meaning as `D_0' with the difference that the digit `5' is added to the page number. 5.29 DIGIT6 (No. 29)
This command has the same meaning as `D_0' with the difference that the digit `6' is added to the page number. 5.30 DIGIT7 (No. 30)
This command has the same meaning as `D_0' with the difference that the digit `7' is added to the page number. 5.31 DIGIT8 (No. 31)
This command has the same meaning as `D_0' with the difference that the digit `8' is added to the page number. 5.32 DIGIT9 (No. 32)
This command has the same meaning as `D_0' with the difference that the digit `9' is added to the page number. Please note: If row 0 is not visible in the display chapter, (e.g. a newsflash page is received), the first page request command like digit(), index() red(), green()... will only box row0. The second page request command will start the command.
Semiconductor Group
25
1996-12-01
SDA 5250/5254/5255
5.33
OSD (No. 33)
This command switches the display chapter to chapter 7 and activates the OSD mode. All acquisition tasks are further done in background. This command is only possible, if DISPLAY_MODE1 bit 0 was set before reset_acq. The display special function registers and the language control register are saved by giving this command.They are restored after giving the command again (toggle function) and the ACQ switches to the original display chapter. In OSD mode the transparent and language control registers must be set by the user. When the OSD command is entered, the following display SFR's are stored to the array DISPLAY_SAVE[10] (xdata) or they are restored from this array if the OSD mode is left: DISPLAY_SAVE[0] = DTCR; DISPLAY_SAVE[1] = LANGC; DISPLAY_SAVE[2] = DTIM; DISPLAY_SAVE[3] = DVD; DISPLAY_SAVE[4] = DHD; DISPLAY_SAVE[5] = DMODE1; DISPLAY_SAVE[6] = DMODE2; DISPLAY_SAVE[7] = DCCP; DISPLAY_SAVE[8]_SAVE = DCRP; DISPLAY_SAVE[9]_SAVE = SCCON; If the OSD chapter 7 is enabled, the "clear_page_bits" in row25 of chapter 7 are under complete user control. If these bits are not used, they must be set to 0. There is no automatic default value. Input parameters: Return values: Comments: EXECUTION TABLE SETUP PARAMETERS (OSD_CHAP_7) RETURN_3.4 Don't forget to set OSD_CHAP_7 in the setup parameters before giving this command. Possible State Enabled OSD Locked at State Disabled OSD
Related I/O parameter DISPLAY_MODE1 (bit 0 = `1') DISPLAY_MODE1 (bit 0 = `0')
Semiconductor Group
26
1996-12-01
SDA 5250/5254/5255
6
Setup Parameters
The following table gives an overview of all possible setup parameters. Bits marked with an (*) are evaluated only in the command reset_acq() and may not be changed after this command. If these bits are changed, the reset_acq() command must be given. Other bits can be changed everytime.
6.1
7 Dis_24
ACQUISITION_MODE
0 0 Ena_ Reset_ Acq Nu_Ait_1 * Nu_Ait_0 * Ena_Flof * Ena_Top * Vps_Prir *
Vps_Prir
1:
After the reset of the acq the reception of VPS has higher priority than the reception of teletext (in line 16). If after 10 fields no VPS data is received, TVTEXT will automatic switch to text reception in line 16. The reception of teletext in line 16 has higher priority than VPS. The automatic reception of TOP pages (including block pages, group pages and so on) is enabled. The automatic acquisition of TOP pages is disabled. The automatic reception of linked FLOF pages is enabled. The automatic acquisition of FLOF pages is disabled. Define the maximum number of AITs which are automatically requested by the ACQ.
0: Ena_Top 1: 0: Ena_Flof Nu_Ait_1 ... Nu_Ait_0 Ena_Reset_Acq 1: 1: 0:
0: Dis_24 1:
This bit enables the automatic reset option of TVTEXT if the `TEXT-INTER-Bit' is set (see return parameter RETURN_2.3). The automatic reset option is disabled. This bit is a return parameter and toggled with the OSD_ROW24 command (see also command No. 1). The reception of data in row 24 is disabled as well as the creating of top titles and list menus. The status line can be used for user menus. Row 24 of the current display chapter must not be overwritten by the user.
27 1996-12-01
0:
Semiconductor Group
SDA 5250/5254/5255
6.2
7
DISPLAY_MODE0
0
Bg_ Clock_2
Bg_ Clock_1
Bg_ Clock_2
Fg_ Clock_2
Fg_ Clock_1
Fg_ Clock_0
Head_Off
Clock_Off
Clock_Off
1: 0:
Row0/col32 ... col39 of the display page are never overwritten and the time is not updated., These positions are overwritten by the acquisition with the time information of all incoming headers. During the rolling header mode row0/col8 ... col31 are not overwritten. During the rolling header mode these positions are overwritten by the acquisition with all incoming headers in serial mode. In parallel mode only the headers of the selected magazine number are overwritten. Define the foreground colour of the clock in command `CLOCK' (serial colour control byte). Define the background colour of the clock in command `CLOCK' (serial colour control byte).
Head_Off
1: 0:
Fg_Clock_2 ... 0 Bg_Clock_2 ... 0
Semiconductor Group
28
1996-12-01
SDA 5250/5254/5255
6.3
7
DISPLAY_MODE1
0 Hold_State Hamm_ Nocorr Init_Page Ena_Trace * Ats * Osd_ Chap_7 *
User_ Dont_Write_ Request_List Row0
Osd_Chap_7
1: 0:
Chapter 7 can be used for OSD functions and is not overwritten by the acquisition. Chapter 7 is used for page acquisition. This is a reduced acquisition mode for using the up to 7 display chapters for another purpose e.g. the automatic tuning system. If this bit is set, the user has to set the xdata variable LAST_ACQ_CHAP to the desired value before calling reset_acq. E.g. LAST_ACQ_CHAP = 2 means, that the programmer can use the display chapter 3 ... 7 for his own purpose. The reception of packet 8/30 and vps is still available, but the TOP and the FLOF modes are disabled. Normal acquisition mode. The page trace is enabled. The page trace is disabled. The programmer can use the 256 byte array beginning at the Xdata label PAGE_TRACE for his own purpose. Page 100 will be requested after reset_acq. If a valid packet 8/30 was received and no user page request was done, an automatic page request with the init page of packet 8/30 will be started. A call of the command index will request the flof index, if not available the packet 8/30 index, and, if not available page 100. The function of mode 0 is disabled. The user has the possibility to define his own init page. The index command will request the user defined page. If this bit is set to `1', the following variables (Xdata) have to be set before reset_acq or index command is called: Xdata label is NEW_PAGE (array of 4 elements) NEW_PAGE(+0): the init page mag number NEW_PAGE(+1): the init page page number NEW_PAGE(+2): the init page subpage-minutes number NEW_PAGE(+3): the init page subpage-hours number If an init page with subpage `do care' is desired, please set the bit 7 of NEW_PAGE(+ 2) to `1'.
Ats
1:
0: Ena_Trace 1: 0:
Init_Page
0:
1:
Semiconductor Group
29
1996-12-01
SDA 5250/5254/5255
Hamm_Nocorr
0: 1:
A one bit error of the magazine- and packet address will be corrected. A one bit error of the magazine- and packet address will not be corrected. If the HOLD() command was executed this bit has following effect: The page request doesn't stop at once and the header is rolling.The page request for the display page stops after the requested page has been received and row 0 - 23 (except the clock) are not overwritten. The page request for the display page stops at once. In any case row 0 - 23 (except the clock) are not overwritten. If the Hold mode is active/inactive RETURN_2 bit 7 is set or cleared. Any new page request e.g. with the colour keys, the index command, entering or leaving the subpage_mode or list_mode, a pagerequest by digits.... will clear the HOLD mode. A TV_TEXT() or a PICTURE() command will not clear the HOLD mode. An active HOLD mode can also be cleared by giving the HOLD() command again. The positions in row 0 column 0 ... 6 of the current display chapter are overwritten by the firmware. The positions in row 0 column 0 ... 6 of the current display chapter are not overwritten by the firmware and controlled by the user. This bit is cleared by the reset_acq command.
Hold_State 0:
1:
Dont_Write_Row0
0: 1:
Semiconductor Group
30
1996-12-01
SDA 5250/5254/5255
User_Request_List 0: 1:
Enables or disables the User_request_List pages for the Page Request Priority Table. No user pages will be requested The maximum of 7 user pages will be requested from the xdata array USER_REQUEST_LIST[14]. The page request of the display page can be started either with the digit() commands, the colour/index keys or with the following setup: NEW_PAGE is an array in xdata of four elements. DISPLAY_MODE1 = DISPLAY_MODE1|0x80; //switch to user request table NEW_PAGE[0] =1: //write the magazine number NEW_PAGE[1] = 00; //write the page number NEW_PAGE[2] = 0; //write the subpage number //(subpage is don't care if bit 7 is 0) NEW_PAGE[3] = 0; //write the subpage hours number new_page_request();//call the page request: If the bit user_request is set the pages in the page_request_priority table will be taken from the xdata array USER_REQUEST_LIST[14] at every new page request. The format of the xdata array USER_REQUEST_LIST[14]: USER_REQUEST_LIST[0] = 1. Magazine USER_REQUEST_LIST[1] = 1. Pagenumber USER_REQUEST_LIST[2] = 2. Magazine USER_REQUEST_LIST[3] = 2. Pagenumber . . USER_REQUEST_LIST[12] = 7. Magazine USER_REQUEST_LIST[13] = 7. Pagenumber A 0xff in any magazine number of the User_Request_List indicates the end condition for the user request. The remaining possible pages are requested accordingly to the page request priority table.
Semiconductor Group
31
1996-12-01
SDA 5250/5254/5255
6.4
7
DISPLAY_MODE2
0 Ptrace_ Small * Top_Pgm_ Mode Act_Update Displ_News_ With_C8 In_Update Eo_P30 Eo_Vs
P26_Clear_ Start_Reset_ C8 Osd *
EO_VS EO_P30
1: Enabled ODD/EVEN output pin VS. 0: Disabled ODD/EVEN output pin VS. 1: Enabled ODD/EVEN output pin P30. 0: Disabled ODD/EVEN output pin P30.
Displ_News_In_Update 0: The boxed characters of the newsflash page are not shown if the page is received. 1: The boxed characters of the newsflash page are shown if the page is received. Switching off/on the update mode hides the boxed characters until the page is received again. Act_Update_With_C8 0: After first reception the update mode is controlled (page received or not) by every incoming header of this page. 1: After first reception the update mode is controlled (page received or not) by every incoming header with C8 bit of this page. 0: In TOP mode the red() command will request the normal page minus. 1: In TOP mode the red() command will request the page minus in priority group steps: If the current page is a normal page the previous normal page will be requested. If the current page is a group page the previous group page will be requested. If the current page is a block page the previous block page will be requested.
Top_Pgm_Mode
Semiconductor Group
32
1996-12-01
SDA 5250/5254/5255
Ptrace_Small
To obtain an additional 156 bytes XDATA memory space, the user has the possibility to choose either the small or the large page trace model. In the large pagetrace model all incoming pages, also the hexadecimal numbers, were included. The necessary XDATA for this feature is 256 bytes. In the small pagetrace model only the decimal pagenumbers (x00-x99) were included. The necessary XDATA for this feature is only 100 bytes. The TVTEXT acquisition demo is delivered in the large page trace model. To switch to the small one, the source code delivered module ADR_IOP.C51 must be compiled with the following compiler switch option: C51 ADR_IOP.C51 define (ptrace_small) With RESET_ACQ() the function USER_DEFINITIONS() in the same module is called and depending on how the module ADR_IOP.OBJ was compiled, the corresponding status bit in DISPLAY_MODE2 (bit 5) is set or cleared. This bit is handled automatically and it is not allowed to set or clear this bit by the user program after the reset_acq 0: The reset_acq() command will start with picture mode. 1: The reset_acq() command will start with OSD chapter 7. This is only possible if the OSD chapter is enabled in DISPLAY_MODE1.0. If TVTEXT was started with OSD chapter 7, this mode can only be left by the OSD() command, which returns TVTEXT to picture mode. The variables of DISPLAY_SAVE[10] (see OSD() command) are not used in this special case. 1: Packet 26 related characters in the page memory are cleared also, if the subcode of the in coming header is the same and the C8 update bit is set to 1 (C8 = 1). 0: No effect with C8 = 1.
Start_Reset_Osd
P26_Clear_C8
Semiconductor Group
33
1996-12-01
SDA 5250/5254/5255
6.5
7 0
DISPLAY_MODE3
0 0 0 0 0 Row24_ Control 0 Mix_State
Mix_State:
0: All background colors are set to transparent when the command mix_mode() is given. 1: Only non boxed background colors are set to transparent when the command mix_mode() is given. The status row 0 col 0-6 are displayed boxed. The status row 24 is displayed boxed in the text modes LIST, TOP, PAGETRACE, and SIMPLE. This input parameter must be initialized before reset_acq() command. 0: Recommended standard function. The declaration of the constants (e.g. red -, green +, yellow cyan) for row 24 in TOP, Simple, Subpagemode, Flof P+,- and boxed row24 is copied from the arrays of subpline, boxline, flofline and topline1 in the module 1: ADR_IOP.C51. The declaration of the constants (e.g. red -, green +, yellow cyan) for row 24 in TOP, Simple, Subpagemode, Flof P+,- and boxed row24 is copied from the arrays of user_subpline, user_boxline, user_flofline and user_topline1 in the module ADR_IOP.C51 These array-lables must be changed and defined to the following lengths if they are used: user_subpline[1]; // must be set to [28] if used user_boxline[1]; // must be set to [10] if used user_flofline[1]; // must be set to [32] if used user_topline1[1]; // must be set to [16] if used
Row24_Control
Semiconductor Group
34
1996-12-01
SDA 5250/5254/5255
6.6
The Language User Set Table: USER_LANGC[8]
Depending on the received C12 ... 14 bits TVTEXT will switch to that language, which is written to USER_LANGC (xdata array[8]).
C14, 13, 12 7 000 001 010 011 100 101 110 111 0 0 0 0 0 0 0 0 LANGC.6 LANGC.6 LANGC.6 LANGC.6 LANGC.6 LANGC.6 LANGC.6 LANGC.6 LANGC.5 LANGC.5 LANGC.5 LANGC.5 LANGC.5 LANGC.5 LANGC.5 LANGC.5 LANGC.4 LANGC.4 LANGC.4 LANGC.4 LANGC.4 LANGC.4 LANGC.4 LANGC.4 LANGC.3 LANGC.3 LANGC.3 LANGC.3 LANGC.3 LANGC.3 LANGC.3 LANGC.3 LANGC.2 LANGC.2 LANGC.2 LANGC.2 LANGC.2 LANGC.2 LANGC.2 LANGC.2 LANGC.1 LANGC.1 LANGC.1 LANGC.1 LANGC.1 LANGC.1 LANGC.1 LANGC.1 0 LANGC.0 LANGC.0 LANGC.0 LANGC.0 LANGC.0 LANGC.0 LANGC.0 LANGC.0
Possible language values for the TVTEXT standard version: 0x0d = French 0x2b = Scandinavian 0x39 = Turkish 0x00 = German 0x0e = Spanish 0x0c = Italian 0x0a = English 0x5a = Rumanian 0x5c = Tchechoslovacian 0x5d = Polish 0x5e = Serbian 0x5b = Hungarian 6.7 Constant Definitions for the Update Mode Characters
The only osd characters which are used by the firmware are in the update mode and depend on the osd character-set of the chip. The following 6 bytes must be defined in the user program as public code characters: update_code[6] = {01BH, 08H, 60H, 61H, 20H, 1BH}; (example of C51) If the osd text sign is on other character positions, the 2 bytes 60H and 61H must be replaced. In banked programs please locate these 6 bytes in the common area.
Semiconductor Group
35
1996-12-01
SDA 5250/5254/5255
7
Return Parameters
The following tables give an overview of all possible return parameters. 7.1
7 VPS_5_7 VPS_11_7 VPS_12_7 VPS_13_7 VPS_14_7 VPS_5_6 VPS_11_6 VPS_12_6 VPS_13_6 VPS_14_6 VPS_5_5 VPS_11_5 VPS_12_5 VPS_13_5 VPS_14_5 VPS_5_4 VPS_11_4 VPS_12_4 VPS_13_4 VPS_14_4 VPS_5_3 VPS_11_3 VPS_12_3 VPS_13_3 VPS_14_3 VPS_5_2 VPS_11_2 VPS_12_2 VPS_13_2 VPS_14_2 VPS_5_1 VPS_11_1 VPS_12_1 VPS_13_1 VPS_14_1
VPS_DATA
0 VPS_5_0 VPS_11_0 VPS_12_0 VPS_13_0 VPS_14_0
See description of VPS, WSS. 7.2 WSS_DATA WSS_DATA[2] (xdata) byte 0 7 6 5 Group 2 WSS_DATA[2] (xdata) byte 1 0 0 not used not used not used 10 Group 4 9 Group 3 8 4 3 2 1 Group 1 0
VPS, WSS
The VPS or WSS data bytes are error checked and written to a buffer in the Xdata RAM. Their actual values can be read every time. The received data are biphase decoded and only updated if all 5 (VPS) or 2 (WSS) relevant bytes are received without any errors. The VPS- or WSS-received flags in RETURN_1 and RETURN_2 indicate, that after a program change the data in the buffer (VPS/WSS) is updated and valid again.
Semiconductor Group
36
1996-12-01
SDA 5250/5254/5255
7.3
Subtitle C6 Page
There is an easy way to find a subtitle page with C6 = 1. The output parameters are C6_MAG and C6_PAGE in the xdata RAM. After the reset_acq() command the variable C6_MAG is set to 0xff; Every, including none requested headers are analyzed, whether the C6 subtitle bit is set or not. If yes, the variables C6_MAG and C6_PAGE are overwritten by the pagenumber of this incoming header. These variables are not overwritten until C6_MAG is set to 0xff again or a reset_acq() command is executed. C6_Mag: (xdata) C6_ Mag.2 C6_Page: (xdata) C6_ Page.7 7.4
7 X X PAGE_ TRACE_ MODE X LIST_ MODE FLOF_ MODE TOP_ MODE
C6_ Mag.1
C6_ Mag.0
C6_ Page.6
C6_ Page.5
C6_ Page.4
C6_ Page.3
C6_ Page.2
C6_ Page.1
C6_ Page.0
TEXT_MODE 0
SIMPLE_MO DE
SIMLPE_MODE TOP_MODE FLOF_MODE LIST_MODE PAGE_TRACE_MODE
TVTEXT is in SIMPLE mode. TVTEXT is in TOP mode. TVTEXT is in FLOF mode. TVTEXT is in LIST mode. TVTEXT is in PAGE TRACE mode. The page trace repetition counter has reached 64.
Semiconductor Group
37
1996-12-01
SDA 5250/5254/5255
7.5
7
RETURN_1
0 REC_VPS REC_ TXT_16 NEWS_IND TOP_IND FLOF_IND
REC_8_30_2 REC_8_30_1 REC_TXT
FLOF_IND TOP_IND NEWS_IND REC_TXT_16 REC_VPS REC_TXT REC_8_30_1 REC_8_30_2 7.6
7 HOLD REC_WSS
TVTEXT has stored a transmitted packet X/27/0. TVTEXT has recognized a transmitted basic TOP table. The current display page is a newsflash/subtitle page. TVTEXT has recognized a transmitted teletextline in TV line 16. TVTEXT has stored valid VPS-data in TV line 16. TVTEXT has recognized any valid teletext header in any TV line. TVTEXT has recognized a packet 8_30_1. TVTEXT has recognized a packet 8_30_2.
RETURN_2
0 X X TEXT_ INTER PAGE_NOT _IN_CYCLE PAGE_ FOUND SDC
SDC PAGE_FOUND
The current display page is in subpage `don't care' mode. The current display page is received.
PAGE_NOT_IN_CYCLE This bit indicates whether the current display page is in the page trace or not. TEXT_INTER REC_WSS HOLD TVTEXT has recognized an interruption of text transmission of more than four frames. TVTEXT has stored a valid WSS signal in TV line 23. The current display chapter is in hold mode. After a new page request the hold mode is automatically cleared.
Semiconductor Group
38
1996-12-01
SDA 5250/5254/5255
7.7
7 X
RETURN_3
0 SUBPAGE_ MODE CLOCK_ MODE OSD_ MODE TEXT_ MODE MIX_ MODE PICTURE_ MODE UPDATE_ MODE
UPDATE_MODE PICTURE_MODE MIX_MODE TEXT_MODE OSD_MODE CLOCK_MODE SUBPAGE_MODE
TVTEXT is in UPDATE mode. TVTEXT is in Picture mode. TVTEXT is in MIX mode. TVTEXT is in TEXT mode. TVTEXT is in OSD mode. The CLOCK command is active. The SUBPAGE mode is active.
Semiconductor Group
39
1996-12-01
SDA 5250/5254/5255
8
Stored Format of 1-Byte Hamming Protected Data
The 1-byte hamming check of data bytes transmitted in TOP tables is done on-line before storing the data into a one byte location. The data bits are compressed to the four LSBs. If there is a non correctable hamming error, the code `ERR' bit is set:
7 0 0 ERR 0 D3_j D2_j D1_j 0 D0_j
Semiconductor Group
40
1996-12-01
SDA 5250/5254/5255
9 Row R0 R0 R0 R0 R0 R0 R0 R0 R0
Stored Format of a Page Column C0 C1 C2 C3 C4 C5 C6 C7 C8 ... C39 D7 0 D7 0 D6 0 D6 0 0 0 0 0 1 1 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
BOX-control (update mode) or space BOX-control (update mode) or space Magazine number (ASCII) Page tens (ASCII) Page units (ASCII) 0 0 0 0 0 0 0 0 0 0
Foreground green or space D5 0 D5 ERR D4 0 D4 0 D3 D3 D3 D3 D2 D2 D2 D2 D1 D1 D1 D1 D0 D0 D0 D0
R1 ... R24 C0 ... C39
R25 R25 R25 R25 R25 R25 R25 R25 Remarks: - - - -
C0 ... C3 Col4 Col5 Col6 Col7 Col8 Col9 Col10 ... 23 0 PT3 C4 C6 C14 0 0 PT2 MT2 C5 C13 HEN 0 PT1 MT1 HT1 C12 SDC
Erase row bits. 0 PT0 MT0 HT0 C11 0 PU3 MU3 HU3 C10 M2 PU2 MU2 HU2 C9 M1 PU1 MU1 HU1 C8 M0 PU0 MU0 HU0 C7
CH_1 CH_0 PBR
PBLF FIRST
Reserved for internal use.
Column 2 ... 4 in row 0 are used for the page number given by the infrared control. Column 0 ... 1 are used for the box control characters (for update mode). Column 5 ... 6 are set to 20H. Column 7 is set to foreground green as long as the page is not received (rolling header). - All bytes in column 8 ... 39 of row 0 and all bytes in row 1 are either parity or hamming checked (corresponding to the Enhanced Teletext Specification).
Semiconductor Group
41
1996-12-01
SDA 5250/5254/5255
M(i), PT(i), PU(i), MT(i), MU(i), HT(i), HU(i) HEN
The bits in row 25/column 4 ... 5 contain the absolute magazine number and the page number. Col 5..8 contain the page subcode and the control bits of the received page of this chapter if PBLF = `0'. 1: Automatic hold of page acquisition after next end of page. The last eight positions of the header of the display page (clock) are always updated. To switch them off use the bit CLOCK_OFF. 0: Automatic hold is disabled. 1: This page is in subpage `don't care' mode. 0: This page is in subpage `do care' mode. 1: Page being looked for. 0: Header of the page is found. 1: Page being received. 0: Page not being received. 1: The page is received for the first time.
SDC PBLF PBR FIRST CHECK Modes
The check bits indicate the checks to be done by acquisition. Table 1 CH_1 0 CH_0 0 Mode Normal page check: Header bytes 6 ... 13 are 1-byte hamming checked. All other bytes of the page are parity checked. No parity check for normal page: Header bytes 6 ... 13 are 1-byte hamming checked. All other bytes of the page are stored unchecked. 1-byte hamming check (TOP page): Header bytes 6 ... 13 are 1-byte hamming checked. Header bytes 14 ... 45 are parity checked. All bytes in packet 1 ... 22 are 1-byte hamming checked. Mixed 1-byte hamming check: Header bytes 6 ... 13 are 1-byte hamming checked. Header bytes 14 ... 45 are parity checked. Bytes 0 ... 7 and 20 ... 27 in packet 1 ... 22 are 1-byte hamming checked. Bytes 8 ... 19 and 28 ... 39 in packet 1 ... 22 are parity checked.
0
1
1
0
1
1
Semiconductor Group
42
1996-12-01
SDA 5250/5254/5255
10
Stored Format of Packet 8/30 (x000) Format 1
PACK_8_30_1 i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ... 36 Remarks M(i), PT(i), PU(i), MT(i), MU(i), HT(i), HU(i) PAG_ER 1: 0: The bits in column 0 ... 3 contain the absolute magazine number, the page number and the page subcode of the initial teletext page. The initial teletext page number is not completely received. The initial teletext page number was received without any errors. Bit 7 PT3 0 0 Bit 6 PT2 MT2 0 Bit 5 0 PT1 MT1 HT1 Bit 4 0 PT0 MT0 HT0 Bit 3 0 PU3 MU3 HU3 Bit 2 M2 PU2 MU2 HU2 Bit 1 M1 PU1 MU1 HU1 Bit 0 M0 PU0 MU0 HU0
PAG_ER 0
Network identification (see byte 13 WST) Network identification (see byte 14 WST) Time offset code (see byte 15 WST) Modified julian date 1. byte (see byte 16 WST) Modified julian date 2. byte (see byte 17 WST) Modified julian date 3. byte (see byte 18 WST) Universal time coordinated 1. byte (see byte 19 WST) Universal time coordinated 2. byte (see byte 20 WST) Universal time coordinated 3. byte (see byte 21 WST) Short program label 1. byte (see byte 22 WST) Short program label 2. byte (see byte 23 WST) Short program label 3. byte (see byte 24 WST) Short program label 4. byte (see byte 25 WST) 20 bytes parity coded for `Status Display'
Semiconductor Group
43
1996-12-01
SDA 5250/5254/5255
11
Stored Format of Packet 8/30 (x100) Format 2
PACK_8_30_2 i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ... 36 Remarks M(i), PT(i), PU(i), MT(i), MU(i), HT(i), HU(i) PAG_ER 1: 0: The bits in column 0 ... 3 contain the absolute magazine number, the page number and the page subcode of the initial teletext page. The initial teletext page number is not completely received. The initial teletext page number was received without any errors. Reserved Bit 7 PT3 0 0 Bit 6 PT2 MT2 0 Bit 5 0 PT1 MT1 HT1 Bit 4 0 PT0 MT0 HT0 Bit 3 0 PU3 MU3 HU3 Bit 2 M2 PU2 MU2 HU2 Bit 1 M1 PU1 MU1 HU1 Bit 0 M0 PU0 MU0 HU0
PAG_ER 0
Byte 13 of format 2 Byte 14 of format 2 Byte 15 of format 2 Byte 16 of format 2 Byte 17 of format 2 Byte 18 of format 2 Byte 19 of format 2 Byte 20 of format 2 Byte 21 of format 2 Byte 22 of format 2 Byte 23 of format 2 Byte 24 of format 2 Byte 25 of format 2 20 bytes parity coded for `Status Display' (see WST)
Semiconductor Group
44
1996-12-01
SDA 5250/5254/5255
12 12.1
Format of the Row24 Titles Format of PAGETRACE and SIMPLE Title
For normal text mode, the firmware will create a simple title in row 24 of the current display chapter. C0 ... C12 C13 ... C24 C25 C26 C27 C28 ... C39
Red page minus, green page plus Next 10th page 06H 1DH 00H Next 100th page 12.2 Format of TOP Title
As soon as the TOP mode is recognized, the firmware will create a TOP title in row 24 of the current display chapter. The TOP title will be updated every time after any of the AITs is received. Pages which are not included in the AIT will be represented by their decimal page number. C0 ... C12 C13 ... C24 C25 C26 C27 C28 ... C39 06H 1DH 00H Next block
Red page minus, green page plus Next group 12.3 Format of LIST Menu
If the LIST mode is switched on, a status line is generated in the display memory. Each field of this line will get a different foreground colour (red, green, yellow, cyan) and black as a background colour. If the field contains a subpage number, the page number and the subpage number will be separated by a `.'. If the subpage is set to `don't care', the four subpage digits are set to `- - - -'.
C0 C1 C2 ... C9 C10 ... C11 C12 ... C19 20H, 02H LIST PAGE #1 C20 ... C21 C22 ... C29 20H, 03H LIST PAGE #2 C30 ... C31 C32 ... C39 20H, 06H LIST PAGE #3
1BH 01H LIST PAGE #0
12.4
Format of Subpage Menu
In subpage mode in row 24 a menu is offered which shows the user which subpage is selected. This menu has a white background and a blue foreground colour. The following shows an example of this menu. C0 ... C12 C13 ... C23 C24 ... C31 page . subpage number C32 ... C39 20H
Red page minus, green page plus 20H
Semiconductor Group
45
1996-12-01
SDA 5250/5254/5255
12.5
Format of Row24 Title in Newsflash Mode
If the actual display page is in newsflash mode row 24 is displayed boxed in TOP, SUBPAGE and SIMPLE mode if the rolling header is active or any page request digit is typed in the 1st time.. C0 01H C1 1DH C2 ... C3 C4 ... C12 0BH C13 ... C39
Red page minus, green page plus Rest of the row24 title
Semiconductor Group
46
1996-12-01
SDA 5250/5254/5255
13 13.1
Development Environment Hardware
The Software development tool should be a PC 80386 or higher with MS-DOS. For testing the software, an in-circuit emulator (e.g. KONTRON) provides an optimum of efficiency. 13.2 * * * * Software
The following tools were needed to develop the software: INTEL ASM51 assembler or Keil A51 assembler KEIL C51 compiler KEIL L51 linker. KEIL BL51 bank linker.
Semiconductor Group
47
1996-12-01
SDA 5250/5254/5255
14
Linker and Module Description of the Acquisition Demo
The following chapter gives an information about the necessary files needed to link teletext to a TV-system controller software. All necessary module file names are stored in the `lk.dat' file and explained in the next chapter.
Note: To link the acquisition files with any TV controller program, the modules must be compiled or assembled with Intel Asm51, Keil A51 assembler or Keil C51 compiler.
The following linker version is valid for the TVTEXT firmware: * Keil linker V3.52. From firmware V2.0 on all modules are compiled with the Keil compiler V5.02, older versions with the compiler V4.06. It is not possible to mix modules compiled with V4.06 and V5.02. If the TV-controller software is developed only with the Intel assembler, the necessary linker V3.52 is delivered together with the TVTEXT firmware. If the TVcontroller software is developed with a C51 compiler which is older than V5.02, an update must be ordered at the Keil company. 14.1 Banking of the TVTEXT Firmware
Banking of the firmware is possible. For banking the new C51 Keil compiler V5.02 and the bank linker BL51 X3.53 is necessary. With the `OC51.exe' tool from Keil this `bank linked module' must be converted to the bank hex files. The complete firmware and the code constants of TVTEXT shall be in the same bank. See also the example linker file `BLK.DAT' on the demo disk. If the TVTEXT firmware is linked with port pin banking, the complete firmware modules must be located in the COMMON area.
Semiconductor Group
48
1996-12-01
SDA 5250/5254/5255
14.2
The Linker File (lk.dat)
Please add the following files and linker commands to your TV-system controllersoftware-linker-file: (*)acq_main.obj, & (*)acq_chec.obj, & (*)acq_list.obj, & (*)acq_top.obj, & (*)acq_flof.obj, & (*)acq_comm.obj, & (*)acq_hand.obj, & (*)adr_vbi.obj, & (*)adr_dis.obj, & (*)adr_p273.obj, & (*)adr_iop.obj, & userfunc.obj, & dat_stor.obj, & hammfunc.obj, & wss_v20.obj, & xdata(0F6EBH,?xd?adr_dis(0C000H), & ?xd?adr_vbi(0F400H), & ramsize(256) TVTEXT acquisition demo contains the following (for the TV program not necessary) additional files: (*)acqdemo.obj, & (*)chardemo.obj, & (*)ifrdemo.obj, & startup.obj, & init.obj, & (*)irir60.obj Files marked with a (*) are written in C51 language, the remaining are written in assembler 51. The ?xd? linker commands are described in section XRAM mapping. Mix of firmware modules with firmware modules of older versions is not allowed.
Semiconductor Group
49
1996-12-01
SDA 5250/5254/5255
14.3
Description of the Files
acq_main.obj It is the interrupt service routine for the vertical interrupt at CVBS signal line 24. The interrupt address is 002BH. This subroutine decodes the fly-back buffer and handles the complete acquisition. acq_chec.obj This subroutine must be called by main loop in the TV controller program with either call acq_chec (in asm) or acq_chec() (in C51). Here the acq_status e.g. switch to TOP, FLOF, or PAGETRACE is cyclically controlled and switched if possible. acq_list.obj All subroutines for the LIST mode. acq_top.obj All subroutines for the TOP mode. acq_flof.obj All subroutines for the FLOF mode. acq_comm.obj In this file all the possible TVTEXT commands e.g. red, green, mix_mode, size, ..., are implemented. acq_hand.obj Contains all subroutines for the acquisition-, and chapter handling. adr_vbi.obj Contains the declaration for the fly_back buffer XRAM. adr_dis.obj It contains the declaration for the display buffer XRAM. adr_iop.obj It contains the declarations for the INPUT and OUTPUT parameters according to the specification userfunc.obj This subroutine is called at every vertical sync interrupt AVIRST = `1'. It is executed after the ACC, Registers and DPTR's are pushed by interrupt. A timer can be started/stopped here to detect the vertical frequency (50/60 Hz). The max. execution time (with call and ret) for this subroutine is 1 ms which are 3000 cpu cycles at a crystal frequency of 18 MHz. Please see also the source file `userfunc.a51'.
Semiconductor Group
50
1996-12-01
SDA 5250/5254/5255
adr_p273.obj It contains the declarations for the OUTPUT parameters packet 27, 8/30 and packet 29. dat_stor.obj The file contains all subroutines for a `fast store' of hamming, parity, biphase or no checked bytes to the display buffers. hammfunc.obj In this file the subroutines for the 3- and the 1-byte hamming check are stored. wss_v20.obj It contains the check and the store of the WSS information. Description of the Additional Files for the Acq Demo (These files are also available as C51 sourcecode on the demo disc). acqdemo.obj It is the main loop for the acquisition. chardemo.obj The file contains the demo picture after power ON and the demo rows for OSD in text. init.obj and startup.obj The reset initialization programmed by C51 conventions (see KEIL C51 manual). ifrdemo.obj There are examples implemented, how all TVTEXT commands can be called and handled. A small demo program shows the usage of on-screen display as a block in a ttx page and osd in row 24. Further examples are given for adding and removing the list pages. In this module is also the subroutine `Adjust_horizontal' implemented: To correct the horizontal position, caused by an external LC circuitry tolerance, there is a function, written in C51 source in the file IFRDEMO.C51 on the demo disc. For further information please read the header of the function `Adjust_horizontal' of this file. irir60.obj The infrared interrupt program at pin EX1 with a special IFR compare timer. With this module you can decode a lr60 word in < 600 s. For more detailed description see chapter 25.
Note: The TVTEXT firmware sets no interrupt priority register. Please set the infrared interrupt to any higher priority than the TTX interrupt.
Semiconductor Group
51
1996-12-01
SDA 5250/5254/5255
15
XRAM Mapping
The XDATA RAM has 10 kbytes and must be linked with the above mentioned ?xd? linkfile and has the following start addresses: ?xd?adr_dis (display buffer) ?xd?adr_vbi (fly_back buffer) ?xd?acq_main (variables acq_main) start address: 0C000H, length: 8192 bytes start address: 0F400H start address: 0F6EBH
and the XDATA RAM of the acq_main program:
Note: If you define your own xdata variables do not set them at an address lower than 0F6EBH. For the free XRAM size and location see the linker information. Please note, that all INPUT and OUTPUT parameters described in the target firmware specification are located in the XDATA RAM.
16
DATA and IDATA Mapping
Please note that a part of the 256 bytes data and idata RAM in the TVTEXT is used for the acquisition. For the free RAM size see the linker information of the M51 file.
17
Memory Model of the TVTEXT Firmware
The functions of the TVTEXT firmware are all compiled with the compiler `small' directive (void FUNCTION(void) small;). There are two versions possible with the `small' and the `large' directive in the global #pragma statement. Depending on the delivered firmware the user has the possibility to choose either the small or the large memory model for his own software.
Semiconductor Group
52
1996-12-01
SDA 5250/5254/5255
18
External Command Calls
To execute a TCI (TVTEXT Command Interface) command you have the choice of calling it directly or indirectly with the command number: e.g. for the red key Direct Call in 8051 assembler language: * lcall red in 8051C language: * red() Indirect Call with the Command Number in 8051 assembler language: * mov r7,#14d * call _execute_acq_command in 8051 C language: execute_acq_command(14). As an example for these command calls please see also the source code file ifrdemo.c51 on the firmware demo disk.
Semiconductor Group
53
1996-12-01
SDA 5250/5254/5255
19
How to Start
This chapter gives you an overview, how to start TVTEXT acquisition after an `error free linking' as described in chapter 14. 19.1 Initialization
Note: After the hardware reset (power ON) a clear of the complete internal and external RAM (Data and Xdata) is necessary (see also description of the Keil start-up module). The clock divider control bit in the special function register AFR must not be set, if the TVTEXT firmware is used.
After program reset all input parameters have to be initialized before calling reset_acq. Furthermore the languages for the C12 ... 14 bits have to be set. Depending on the hardware the H-V mode or the SSC mode must be selected and the interrupt priority for infrared must be a higher level than the acquisition interrupt. As an example for this initialization please see also the start-up sequence of the source code file acqdemo.c51 on the firmware demo disk. 19.2 Reset_acq
After program start of TVTEXT (reset) or after every channel change you have to initialize the TVTEXT acquisition by giving this command. Reset_acq will also enable the acq-interrupt (IE.5) (see also chapter 5.2).
Note: It is not allowed to start any TVTEXT command before the input parameters are set and before the reset_acq command is executed.
The TVTEXT will start in SIMPLE_MODE. All other modes (subpage, list, clock, osd's, top, flof, update, ...) are left by reset_acq. 19.3 Acq_chec
In the TV-controller-program endless-loop the command acq_chec must be added. Acq_chec controls the complete acquisition that means: - Automatic reset_acq if enabled and no teletext receive for more than 4 half-fields. - Switch to FLOF request if enabled and write FLOF titles if enabled. - Switch to TOP request if TOP enabled and detected and write TOP titles with or without ADDI's if enabled. - Switch to page-trace request if the pagetrace is full. - Update of the RETURN and TEXTMODE parameters.
Semiconductor Group
54
1996-12-01
SDA 5250/5254/5255
20
Segment Name Conventions for Assembler Programs
To ensure the overlay process of the variables of the L51 linker, the segment names must be defined in C51 Keil compiler conventions in the external assembler programs. Examples: ?PR?FUNCTION?MODULE SEGMENT CODE ?DT?FUNCTION?MODULE SEGMENT DATA ?BI?FUNCTION?MODULE SEGMENT BIT for program code in function for local variables in function for local bit variables in function
Note: To ensure, that the linker can generate a complete program flow analysis, the main program must have the segment name ?pr?main. Please see also C51 Keil compiler manual.
21
Data Pointer Select (DPSEL) Handling
The TVTEXT firmware uses several data pointers (DPTR selected with DPSEL). The acquisition interrupt stores and restores these data pointers. But the TVTEXT commands need DPTR0 as start value for a correct function. If the external TV-controller software uses another data pointer than DPTR0, it is necessary to set DPSEL to `0' before any acquisition command is called or before acq_check is executed. When the acquisition command or acq_check is finished the return value of DPSEL is `0'.
Semiconductor Group
55
1996-12-01
SDA 5250/5254/5255
22 22.1
Appendix Cyrillic Firmware Version
Most modules of the cyrillic version are the same as modules of the TVTEXT 8 page version. The cyrillic specific differences are generated by the compilerswitch "cyrillic". The features for the standard TVTEXT firmware version are also valid for the cyrillic version. The linker filenames for cyrillic (file cylk.daton demo disk): acdm_cy8.obj, acmn_cy8.obj, acq_chec.obj, acq_list.obj, acq_top.obj, & acq_flof.obj, accm_cy8.obj, achd_cy8.obj, chdm_cy8.obj, ifrdemo.obj, & adr_vbi.obj, adr_dis.obj, adr_p273.obj, adio_cy8.obj, startup.obj,& init.obj, userfunc.obj, dast_cy8.obj, hammfunc.obj, wss.obj, irir60.obj& TO "LINKER_OUTPUT_NAME" & xdata(0f6ebh,?xd?adr_dis(0c000h), ?xd?adr_vbi(0f400h)) ramsize(256) The bank linker filenames for cyrillic (file bcylk.dat on demo disk): COMMON{startup.obj, init.obj, acdm_cy8.obj}, BANK0 {chdm_cy8.obj}, BANK1{acmn_cy8.obj, acq_chec.obj, acq_list.obj, acq_top.obj, acq_flof.obj, accm_cy8.obj, achd_cy8.obj, adr_vbi.obj, adr_dis.obj, adr_p273.obj, adio_cy8.obj, userfunc.obj, dast_cy8.obj, hammfunc.obj, wss.obj}, BANK2{ifrdemo.obj,irir60.obj} TO ACQBANK BANK0 (?CO?CHARDEMO(1000H)) xdata(0f6ebh,?xd?adr_dis(0c000h), ?xd?adr_vbi(0f400h)) RAMSIZE(256) BANKAREA (1000H,0FFFFH) IBANKING DEBUGPUBLICS DEBUGSYMBOLS DEBUGLINES
Semiconductor Group
56
1996-12-01
SDA 5250/5254/5255
The initialization is nearly the same as for the standard version with the following exeptions: 1. These primary languages are supported and must be initialized in the array USER_LANGC[8] with the following numbers: 0 = letish * 1 = Estonian * 2 = Russian * 3 = Ukrainian * 4-7 = English * 5a = Rumanian 5c = Czechian 5d = Polish 5e = Serbian 5b = Hungarian At languages which are marked with a "*" the twist mode is allowed to a language, which is also marked with a "*". 2. The following input parameters (xdata) must be initialized for the twist mode: TWIST_LANGUAGE0: TWIST_LANGUAGE1: Must be initialized with that language value, to which shall be twisted in a latin based page. Must be initialized with that language value, to which shall be twisted in a cyrillic based page.
The following languagenumbers are allowed for the twist mode: 0 = Letish 1 = Estonian 2 = Russian 3 = Ukrainian 4-7 = English * * * * *
Please see also acqdemo.c51 source file on the demo disk. Please refer to those parts which belong to the compilerswitch "cyrillic". Number of acquisition pages for the cyrillic version: In the cyrillic version only a 6 page acquisition from chapter 0 - 5 is possible. The chapter 7 remains the chapter for OSD purpose. In chapter 6 the incoming P26 are stored as bit flags and it cannot be used as a page acquisition chapter. In the ATS mode (input parameter DISPLAY_MODE1 bit 1) the last LAST_ACQ_CHAP parameter can have only values from 0 to 5. Disabling the OSD mode with the input parameter bit 0 of DISPLAY_MODE1 has no effect.
Semiconductor Group
57
1996-12-01
SDA 5250/5254/5255
22.2
Greek Firmware Version
Most modules of the greek version are the same as modules of the TVTEXT 8 page version. The greek specific differences are generated by the compilerswitch "greek". The features for the standard TVTEXT firmware version are also valid for the greek version. The changed linker filenames for Greek (file grlk.daton demo disk): acdm_gr8.obj, acmn_gr8.obj, acq_chec.obj, acq_list.obj, acq_top.obj, & acq_flof.obj, accm_gr8.obj, achd_gr8.obj, chdm_gr8.obj, ifrdemo.obj, & adr_vbi.obj, adr_dis.obj, adr_p273.obj, adio_gr8.obj, startup.obj, & init.obj, userfunc.obj, dast_gr8.obj, hammfunc.obj, wss_v20.obj, irir60.obj& TO "LINKER_OUTPUT_NAME" & xdata(0f6ebh, ?xd?adr_dis(0c000h), ?xd?adr_vbi(0f400h)) ramsize(256) The bank linker filenames for Greek (file bgrlk.dat on demo disk): COMMON{startup.obj, init.obj, acdm_gr8.obj}, BANK0 {chdm_gr8.obj}, BANK1{acmn_gr8.obj, acq_chec.obj, acq_list.obj, acq_top.obj, acq_flof.obj, accm_gr8.obj, achd_gr8.obj, adr_vbi.obj, adr_dis.obj, adr_p273.obj, adio_gr8.obj, userfunc.obj, dast_gr8.obj, hammfunc.obj, wss_v20.obj}, BANK2{ifrdemo.obj, irir60.obj} TO ACQBANK BANK0 (?CO?CHARDEMO(1000H)) xdata(0f6ebh, ?xd?adr_dis(0c000h), ?xd?adr_vbi(0f400h)) RAMSIZE(256) BANKAREA (1000H, 0FFFFH) IBANKING DEBUGPUBLICS DEBUGSYMBOLS DEBUGLINES The initialization is nearly the same as for the standard version with the following exeptions: 1. These primary languages are supported and must be initialized in the array USER_LANGC[8] with the following numbers: 00 = German 0a = English 42 = Turkish * 43 = Greek * 2b = Scandinavian 0c = Italian 0d = French 0e = Spain At languages which are marked with a "*" the twist mode is allowed to a language, which is also marked with a "*".
Semiconductor Group
58
1996-12-01
SDA 5250/5254/5255
Please see also acqdemo.c51 source file on the demo disk. Please refer to these parts which belong to the compilerswitch "greek". 22.3 SIGNAL QUALITY COUNTER
Three counters at the xdata label ACQ_OUPUT[4] count the following values: Meaning of the ACQ_OUTPUT parameters: ----------------------------------------------------------ACQ_OUTPUT(+ 0): NU_HE_7 ... NU_HE_0 number of detected headers ACQ_OUTPUT(+ 1): SQC_0.7 ... SQC_0.0 correctable hamming errors ACQ_OUTPUT(+ 2): SQC_1.7 ... SQC_1.0 non correctable hamming errors ACQ_OUTPUT(+ 3): Not used ACQ_OUTPUT[0, ..., 2] is set to `0' with the reset_acq command. The signal quality can be found out (after reset_acq) by the relation of the found headers and the number of hamming errors. Please note that each of these counters is stopped, when it has reached the value `255'.
Semiconductor Group
59
1996-12-01
SDA 5250/5254/5255
23 23.1
Application Notes Overview about the On Screen Display Possibilities for the 8 Page Version
At the positions of row 0 col 0-6, row 0 col 32-39 and row 24 col 0-39 OSD can be realized in the active display chapter without disturbing the text reception. - OSD in row 0 col 32-39: by setting the clock_off bit in DISPLAY_MODE0.0. When this bit is cleared the next incoming header overwrites the row 0 col32-39. - OSD in row 24 col 0-39: call of the command osd_row24(). These positions are now not overwritten by the firmware and can be used for OSD. If this mode is left (call osd_row24() again), row 24 is actualized by the firmware. - OSD row 0 col 0-6: set the bit Dont_write_row0 in DISPLAY_MODE1.6. These positions are now not overwritten by the firmware and can be used for OSD. If this mode is left (clear the bit Dont_write_row0 in DISPLAY_MODE1.6), row 0 col 06 must be restored by the programer or updated by any new_page_request command like index(), red, digit... - OSD row 0 to row24: call of the command osd().The complete display chapter 7 can be used for OSD. OSD and text together can be realized by a copy loop from the active display chapter to the OSD chapter 7 (must be enabled). Please note: If the current text page and osd rows are displayed together, the text row before the osd row or the last osd row could contain a control character for double height from the broadcaster. In this case these rows should be erased. Software examples for all above mentioned OSD displays are a part of each firmware version in the files IFRDEMO.C51 on the demo disk. 23.2 Text Reception Quality
Several TV set manufacturers use their own test pages during production to check the text reception performance of the TV sets. One of the standard test pages is a so called clock_cracker page, which consists of an alternating pattern of data bytes which leads to a minimum number of edges in the data stream. This is the worst condition, which can occur under real text reception conditions. Every device should decode this page correctly. If a non-standard test page (similar to the clock cracker page) is to be used, only a few parity fails are allowed. This is required for a correct frequency control. If a data line consists of a longer sequence of "00000000" bytes (parity error!), the required frequency adjustment is not longer possible and decoding errors may occur (depending of the actual PLL stability of a certain device and of the signal stability). The behavior regarding this non-standard test pages has no correlation to the reception quality of real teletext signals.
Semiconductor Group
60
1996-12-01
SDA 5250/5254/5255
24
Patents
Dear Software User, you may appreciate the integrated circuit SDA 525x (TV-TEXT) as an advanced teletext processor for comprehensive teletext information treatment. In order to benefit from its hardware features we prepared a number of firmware options for you disposal. For this reason, we would like to draw your attention to relevant intellectual property rights that might be in conflict with the firmware routines. Especially, please consider the following patents/patent applications: 1. TOP-Teletext - European Patent EP 0 264 565 / German Patent DE 36 34 757 from Thomson Multimedia: The patents refer to the use of the TOP-basic-table from the transmitting station when the "next page"-key is operated. We have been informed that Thomson already started licensing activities. 2. Page trace - German Patent DE 36 22 308 from Thomson Multimedia: The patent refers to the "page trace"-firmware option that collects the page numbers of all receivable pages. Through "page trace" the TOP-basic-table may be replaced. 3. Remote control - European Patent EP 0 145 677 from EDICO: The patent refers to a tv-set comprising a remote control including a "+/-"-key for scrolling through teletext pages. 4. Favorite pages - European Patent EP 0 438 185 from EDICO: The patent refers to the memory organization for storing page numbers for favorite teletext pages. 5. Meshing - European Patent Application EP 0 553 910 from Philips: The patent application refers to superimposing text on a television picture through a display window with transparent background colour. When using one of the above mentioned firmware routines in a TV set please make sure that you are not in conflict with the patents/patent applications and obtain a license from the patent holder if necessary. Please bear in mind that there may be additional protective rights in further countries originating from the above patents/patent applications. You may understand that we cannot guarantee for the above mentioned list being complete. Generally, we do not undertake any liability for claims from intellectual property rights which may be held by third parties other than Siemens being related to the implementation of firmware routines made available through Siemens.
Semiconductor Group 61 1996-12-01
SDA 5250/5254/5255
25
Infrared Decoder for SIEMENS IR60 Code
Figure 1 Description of the IR Decoder Every edge of the IR signal at port 3.3 is starting the interrupt service routine (ISR) with the function name `IrIsr()'. Simultaneously the value of the IR timer is captured into the Capture Register CAPL and CAPH and the IR timer is autoreloaded with `0' by hardware. The ISR saves the Capture Registers into two variables `TL' and `TH' and checks if these captured timer values are within specified time intervals. In case of a valid timer value the signal will be decoded, the information will be stored and the ISR will be left. In case of no valid value the information variables will be reinitialised so that the next edge will understood as the first bit of the next command.
Figure 2 Timing Diagram of IR Decoder
Semiconductor Group
62
1996-12-01
SDA 5250/5254/5255
Test Conditions Controller type Crystal frequency of Controller IR Receiver type IR Transmitter type Crystal frequency of IR transmitter SIEMENS SDA 5250-E 18 MHz SIEMENS SFH 506.33 SIEMENS SDA 2218 500 kHz 10 %
IrIsr() Output Parameter (global variables) given to IR Driver Name of Parameter IrReady Data Type Bit Explanation Will be set to `1', if a new command has been received, must be cleared by IR driver software after getting the new command.
IrCommand
Unsigned char (bit 0 ... 5) Bits 0 ... 5 are holding actual complete received IR command if IrReady is set to `1', bit 0 contains the A-bit and bit 5 the F-bit of the SIEMENS IR60 Code. Unsigned char (bit 0 ... 2) Bits 0 ... 3 are holding actual complete IR group if IrReady is set to `1', bit 0 contains the G-bit and bit 2 the I-bit of the SIEMENS IR60 Code.
IrGroup
7 IrCommand IrGroup X X X X F-bit X E-bit X D-bit X C-bit I-bit B-bit H-bit
0 A-bit G-bit
Figure 3 Timing Diagram of IrReady Bit
Semiconductor Group 63 1996-12-01
SDA 5250/5254/5255
The IrReady bit will be set by the IR decoder if a complete command has been received and must be cleared by the IR driver software after getting the group and command information from the variables `IrCommand' and `IrGroup'. The command information must be got before a new complete command has been received. Otherwise the last received command information will be lost. Files of the IR Decoder To run IrIsr() following files are necessary: File Name IRIR60.OBJ, IRIR60.C51 IRIR60.H Content Function IrIsrlnit() Function IrIsr() Extern declaration of - global variables needed by IrIsr() - function IrIsrInit()
Implementation of IR Decoder modules into TV Application * Include IRIR60.H in every module where output parameters of the IR decoder will be used (e.g. in IR driver) * Include IRIR60.H in that module where initialization of IR decoder should occur * Initialization of IR Decoder must be done by calling the function `IrIsrInit()', ensure that bit EA (enable all interrupts) will be set to `1' * The IR driver must be programmed * To adjust `IrIsr' for different IR transmitter crystal frequencies the IR timing constants in file IRIR60.C51 must be modified.
Semiconductor Group
64
1996-12-01
SDA 5250/5254/5255
25.1
Infrared Keys for TVTEXT Commands in the Acquisition Demo
Figure 4
Semiconductor Group 65 1996-12-01


▲Up To Search▲   

 
Price & Availability of SDA5250

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X